/**
 * @(#)SchemeMainDataManager.java
 *
 * Copyright (c) 2014-2014  苏州犀牛网络科技有限公司 版权所有
 * xiniunet. All rights reserved.
 *
 * This software is the confidential and proprietary
 * information of  xiniunet.
 * ("Confidential Information"). You shall not disclose
 * such Confidential Information and shall use it only
 * in accordance with the terms of the contract agreement
 * you entered into with xiniunet.
 */
package com.showcal.platform.biz;

import com.showcal.platform.request.*;
import com.showcal.platform.response.*;
import com.xiniunet.framework.security.Passport;

/**
 * Created by 顾志雄 on 2015-11-03 11:23:08.
 * @author 顾志雄
 */
public interface SchemeMainDataManager {
    /**
     * 根据Id获取方案主数据
     *
     * @param request 获取方案主数据请求
     * @param passport 用户护照
     * @return 获取方案主数据应答
     */
    SchemeMainDataGetResponse get(SchemeMainDataGetRequest request, Passport passport);


    /**
     * 模糊查询方案主数据
     *
     * @param request 模糊查询方案主数据请求
     * @param passport 用户护照
     * @return 模糊查询方案主数据应答
     */
    SchemeMainDataSearchResponse search(SchemeMainDataSearchRequest request, Passport passport);

    /**
     * 高级查询方案主数据
     *
     * @param request 高级查询方案主数据请求
     * @param passport 用户护照
     * @return 高级查询应答
     */
    SchemeMainDataFindResponse find(SchemeMainDataFindRequest request, Passport passport);

    /**
     * 获取所有方案主数据列表
     *
     * @param request 获取所有方案主数据列表请求
     * @param passport 用户护照
     * @return 获取所有方案主数据列表应答
     */
    SchemeMainDataGetAllListResponse getAllList(SchemeMainDataGetAllListRequest request, Passport passport);


    /**
     * 创建方案主数据
     *
     * @param request 创建方案主数据请求
     * @param passport 用户护照
     * @return 创建方案主数据应答
     */
    SchemeMainDataCreateResponse create(SchemeMainDataCreateRequest request, Passport passport);


    /**
     * 更新方案主数据
     *
     * @param request 更新方案主数据请求
     * @param passport 用户护照
     * @return 更新方案主数据应答
     */
    SchemeMainDataUpdateResponse update(SchemeMainDataUpdateRequest request, Passport passport);


    /**
     * 删除方案主数据
     *
     * @param request 删除方案主数据请求
     * @param passport 用户护照
     * @return 删除方案主数据应答
     */
    SchemeMainDataDeleteResponse delete(SchemeMainDataDeleteRequest request, Passport passport);

    


    /**
     * 导入方案主数据
     *
     * @param request 导入方案主数据请求
     * @param passport 用户护照
     * @return 导入方案主数据应答
     */
    SchemeMainDataListImportResponse importList(SchemeMainDataListImportRequest request, Passport passport);


}
